Інструкція до лабораторної роботи № 6
з курсу "Організація та функціонування комп"ютерів"
Тема: Виконання арифметичних операцій у арифметиці з рухомою комою. Розробка програм додавання і множення двійкових чисел у інструкціях симулятора DeComp.
Мета роботи:
1. Вивчити представлення додатних та від”ємних чисел у арифметиці з рухомою комою в системах d2, d8, d16.
2. Навчитись розробляти алгоритми і cтворювати програми додавання чисел в арифметиці з рухомою комою в інструкціях симулятора DeComp.
3. Навчитись розробляти алгоритми і створювати програми виконання операції множення двійкових чисел у арифметиці з рухомою комою
в інструкціях симулятора DeComp.
Теретична частина.
І. Представлення чисел з рухомою комою.
Представлення чисел з рухомою комою базується на зображені чисел у напівлогарифмічній формі А ( p,( М, що відповідає запису чисел у нормалізованій формі:
A = d(p * (( М),
де p – ціле число, яке називається порядком числа А;
d – основа числення;
М – мантиса числа А (звичайно |M|<1).
Фактично місце коми у мантисі М визначається величиною порядку р. Із зміною порядку р у більшу або меншу сторону кома відповідно переміщується ліворуч або праворуч, тобто рухається (“плаває”) в зображені числа. Наприклад:
23410 = 0,234 * 103 = 0,0234 * 104 = 2,34 * 102 ;
1011012 = 0,101101 * (10)110 = 0,00101101 * (10)1000 ;
Числа, які задовільняють умові 1/d ( M ( 1, називаються нормалізованими. У розрядній сітці комп”ютерів фіксуються знак числа, знак порядку, порядок числа і числовий вираз мантиси.
0
1
2
...
...
...
...
...
...
m+n+1
(0
(0
(1
(2
...
(m
(1
(2
...
(n
_____ ______ _________________________ __________________________
( ( ( (
Знак Знак Порядок Мантиса
числа порядку
Нормалізоване представлення чисел дозволяє зберігати у розрядній
сітці більшу кількість цифр, що мають значення, тому точність обчислень підвищується. Звичайно у комп”ютері нормалізація як при вводі чисел, так і у процесі обчислень (після виконання чергової операції) здійснюється автоматично. При цьому мантиса зсувається ліворуч на необхідну кількість розрядів і виконується відповідне зменшення порядку, тобто виконується “нормалізація вліво”. При виконанні операції додавання або віднімання нормалізованих чисел з різними порядками одно з них “денормалізується” до вирівнювання порядків, а сума (або різниця) знову нормалізується.
У комп”ютерах із рухомою комою можливе переповнення розрядної сітки, так само, як і у комп”ютерах із фіксованою комою. Наприклад, переповнення може виникнути при додаванні нормалізованих чисел з однаковими порядками. У цьому випадку з”являється “1” ліворуч від коми. Такого роду переповнення нейтралізується зсувом мантиси вправо на один розряд і збільшенням порядку на одиницю, тобто виконується “нормалізація вправо”.
У сучасних комп”ютерах розповсюджене представлення чисел з рухомою комою із недвійковою основою системи числення (d=8 і d=16). Використання недвійкової основи трохи зменшує точність обчислень при заданому числі розрядів мантиси, але дозволяє збільшити диапазон чисел, які можна представити у комп”ютері і прискорити виконання деяких операцій, в тому числі – нормалізації, за рахунок того, що зсув виконується відразу на декілька двійкових розрядів (при d-8 на три розряди, при d=16 на чотири розряди). Вирогідність отримання ненормалізованих чисел у ході обчислень значно зменшується.
При застосуванні недвійкової основи d=16 зручно порядок числа зображати через характеристику px – зміщені порядки, що представляють собою суму дійсного порядку Р числа із врахуванням знаку і числа 64, тобто:
Px = p + 64.
Знак
Характеристика
М а н т и с а
1
100 0001
1010
0000
0100
0111
1000 . . .
0 1 7 8 ...